Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Login] Fix to make sure SMS OTP is triggered automatically #12319

Merged
merged 5 commits into from
Aug 16, 2024

Conversation

hichamboushaba
Copy link
Member

@hichamboushaba hichamboushaba commented Aug 13, 2024

Closes: #12304 Closes: #11938 Closes: #12341

Uses wordpress-mobile/WordPress-Login-Flow-Android#152

Description

This PR updates the FluxC and Login libraries to fix the issue mentioned in the title.

The changes also fixes the issue of not correctly parsing the error messages, and should allow the user to receive meaningful error messages when entering some incorrect credentials.

Steps to reproduce

  1. Using trunk
  2. Open the app, the start the login using a WordPress.com that has SMS 2FA enabled, and that was used previously to sign in to the Jetpack mobile app.
  3. After submitting the password, notice that the SMS is not triggered automatically.

Testing information

Testing the fix

SMS 2FA
  1. Use a WordPress.com account with SMS 2FA
  2. Start signing in using WordPress.com
  3. Confirm that after submitting the password, an SMS OTP is automatically triggered.
  4. Continue the login and confirm it works as expected.
Error messages parsing
  1. Start wordpress.com authentication.
  2. Enter a wrong password, confirm a meaningful error message is shown.
2FA during Jetpack installation/connection
  1. Sign in using site credentials to the app.
  2. Start the Jetpack installation/connection flow.
  3. Connect using a WordPress.com account that uses 2FA
  4. Confirm the flow works correctly now.

Non-regression

  1. Use a WordPress.com account with a security key configured.
  2. Confirm the login works as expected using the key.
  3. Logout.
  4. Use a WordPress.com account with 2FA using an applicaiton.
  5. Confirm the login works as expected.
  • I have considered adding unit tests for this change. If I decided not to add them, I have provided a brief explanation below (optional):
  • I have considered if this change warrants release notes and have added them to RELEASE-NOTES.txt if necessary. Use the "[Internal]" label for non-user-facing changes.

@hichamboushaba hichamboushaba added type: bug A confirmed bug. feature: login Related to any part of the log in or sign in flow, or authentication. labels Aug 13, 2024
@hichamboushaba hichamboushaba added this to the 20.0 milestone Aug 13, 2024
@hichamboushaba hichamboushaba added the status: do not merge Dependent on another PR, ready for review but not ready for merge. label Aug 13, 2024
@dangermattic
Copy link
Collaborator

dangermattic commented Aug 13, 2024

1 Warning
⚠️ This PR is assigned to the milestone 20.0. The due date for this milestone has already passed.
Please assign it to a milestone with a later deadline or check whether the release for this milestone has already been finished.

Generated by 🚫 Danger

@wpmobilebot
Copy link
Collaborator

wpmobilebot commented Aug 13, 2024

📲 You can test the changes from this Pull Request in WooCommerce-Wear Android by scanning the QR code below to install the corresponding build.
App Name WooCommerce-Wear Android
Platform⌚️ Wear OS
FlavorJalapeno
Build TypeDebug
Commitaedf0b5
Direct Downloadwoocommerce-wear-prototype-build-pr12319-aedf0b5.apk

@wpmobilebot
Copy link
Collaborator

wpmobilebot commented Aug 13, 2024

📲 You can test the changes from this Pull Request in WooCommerce Android by scanning the QR code below to install the corresponding build.

App Name WooCommerce Android
Platform📱 Mobile
FlavorJalapeno
Build TypeDebug
Commitaedf0b5
Direct Downloadwoocommerce-prototype-build-pr12319-aedf0b5.apk

@hichamboushaba hichamboushaba force-pushed the issue/12304-trigger-SMS-OTP-automatically branch from 728a2d3 to 3ee16f9 Compare August 15, 2024 09:40
@hichamboushaba hichamboushaba marked this pull request as ready for review August 15, 2024 12:31
Copy link
Contributor

@ThomazFB ThomazFB left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for identifying the SMS issue and taking care of this fix, @hichamboushaba 🙇

I can confirm the change introduces no regressions to the usual 2FA code and Webauthn scenarios:

Screen_recording_20240815_200607.mp4
Screen_recording_20240815_200714.mp4

@hichamboushaba hichamboushaba removed the status: do not merge Dependent on another PR, ready for review but not ready for merge. label Aug 16, 2024
@wpmobilebot
Copy link
Collaborator

Found 1 violations:

The PR caused the following dependency changes:

expand

-+--- org.wordpress:fluxc:trunk-6c8bfe8b38b9e29649d32dc80b433977e31b4d99
-|    +--- org.jetbrains.kotlin:kotlin-parcelize-runtime:1.9.25
-|    |    +--- org.jetbrains.kotlin:kotlin-stdlib:1.9.25 (*)
-|    |    \--- org.jetbrains.kotlin:kotlin-android-extensions-runtime:1.9.25
-|    |         \--- org.jetbrains.kotlin:kotlin-stdlib:1.9.25 (*)
-|    +--- androidx.exifinterface:exifinterface:1.0.0 -> 1.3.6
-|    |    \--- androidx.annotation:annotation:1.2.0 -> 1.8.0 (*)
-|    +--- androidx.security:security-crypto:1.0.0 -> 1.1.0-alpha03
-|    |    +--- androidx.annotation:annotation:1.1.0 -> 1.8.0 (*)
-|    |    +--- com.google.crypto.tink:tink-android:1.5.0
-|    |    \--- androidx.collection:collection:1.1.0 -> 1.4.0 (*)
-|    +--- com.squareup.okhttp3:okhttp-urlconnection:4.9.0
-|    |    +--- com.squareup.okhttp3:okhttp:4.9.0 -> 4.12.0 (*)
-|    |    \--- org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.4.10 -> 1.9.10 (*)
-|    +--- com.google.code.gson:gson:2.8.5 -> 2.10.1
-|    +--- org.apache.commons:commons-text:1.10.0 (*)
-|    +--- androidx.room:room-runtime:2.6.1 (*)
-|    +--- androidx.room:room-ktx:2.6.1
-|    |    +--- androidx.room:room-common:2.6.1 (*)
-|    |    +--- androidx.room:room-runtime:2.6.1 (*)
-|    |    +--- org.jetbrains.kotlin:kotlin-stdlib:1.8.22 -> 1.9.25 (*)
-|    |    +--- org.jetbrains.kotlinx:kotlinx-coroutines-android:1.7.1 -> 1.8.1 (*)
-|    |    +--- androidx.room:room-common:2.6.1 (c)
-|    |    \--- androidx.room:room-runtime:2.6.1 (c)
-|    +--- com.google.dagger:dagger:2.51.1
-|    |    \--- javax.inject:javax.inject:1
-|    +--- org.jetbrains.kotlinx:kotlinx-coroutines-core:1.8.1 (*)
-|    +--- org.jetbrains.kotlinx:kotlinx-coroutines-android:1.8.1 (*)
-|    +--- org.wordpress:wellsql:2.0.0
-|    |    +--- androidx.annotation:annotation:1.2.0 -> 1.8.0 (*)
-|    |    \--- org.wordpress.wellsql:wellsql-annotations:2.0.0
-|    +--- org.wordpress.fluxc:fluxc-annotations:trunk-6c8bfe8b38b9e29649d32dc80b433977e31b4d99
-|    +--- org.greenrobot:eventbus-java:3.3.1
-|    +--- com.squareup.okhttp3:okhttp:4.9.0 -> 4.12.0 (*)
-|    +--- com.android.volley:volley:1.1.1 -> 1.2.0
-|    +--- androidx.paging:paging-runtime:2.1.2
-|    |    +--- androidx.paging:paging-common:2.1.2
-|    |    |    +--- androidx.annotation:annotation:1.0.0 -> 1.8.0 (*)
-|    |    |    \--- androidx.arch.core:core-common:2.0.0 -> 2.2.0 (*)
-|    |    +--- androidx.arch.core:core-runtime:2.0.0 -> 2.2.0 (*)
-|    |    +--- androidx.lifecycle:lifecycle-runtime:2.0.0 -> 2.7.0 (*)
-|    |    +--- androidx.lifecycle:lifecycle-livedata:2.0.0 -> 2.7.0 (*)
-|    |    \--- androidx.recyclerview:recyclerview:1.0.0 -> 1.3.2 (*)
-|    +--- com.goterl:lazysodium-android:5.0.2
-|    +--- net.java.dev.jna:jna:5.5.0
-|    \--- org.jetbrains.kotlin:kotlin-stdlib:1.9.25 (*)
++--- org.wordpress:fluxc:trunk-863f213e0e3a7a4322032e8e8c57a99f77bb48ec
+|    +--- org.jetbrains.kotlin:kotlin-parcelize-runtime:1.9.25
+|    |    +--- org.jetbrains.kotlin:kotlin-stdlib:1.9.25 (*)
+|    |    \--- org.jetbrains.kotlin:kotlin-android-extensions-runtime:1.9.25
+|    |         \--- org.jetbrains.kotlin:kotlin-stdlib:1.9.25 (*)
+|    +--- androidx.exifinterface:exifinterface:1.0.0 -> 1.3.6
+|    |    \--- androidx.annotation:annotation:1.2.0 -> 1.8.0 (*)
+|    +--- androidx.security:security-crypto:1.0.0 -> 1.1.0-alpha03
+|    |    +--- androidx.annotation:annotation:1.1.0 -> 1.8.0 (*)
+|    |    +--- com.google.crypto.tink:tink-android:1.5.0
+|    |    \--- androidx.collection:collection:1.1.0 -> 1.4.0 (*)
+|    +--- com.squareup.okhttp3:okhttp-urlconnection:4.9.0
+|    |    +--- com.squareup.okhttp3:okhttp:4.9.0 -> 4.12.0 (*)
+|    |    \--- org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.4.10 -> 1.9.10 (*)
+|    +--- com.google.code.gson:gson:2.8.5 -> 2.10.1
+|    +--- org.apache.commons:commons-text:1.10.0 (*)
+|    +--- androidx.room:room-runtime:2.6.1 (*)
+|    +--- androidx.room:room-ktx:2.6.1
+|    |    +--- androidx.room:room-common:2.6.1 (*)
+|    |    +--- androidx.room:room-runtime:2.6.1 (*)
+|    |    +--- org.jetbrains.kotlin:kotlin-stdlib:1.8.22 -> 1.9.25 (*)
+|    |    +--- org.jetbrains.kotlinx:kotlinx-coroutines-android:1.7.1 -> 1.8.1 (*)
+|    |    +--- androidx.room:room-common:2.6.1 (c)
+|    |    \--- androidx.room:room-runtime:2.6.1 (c)
+|    +--- com.google.dagger:dagger:2.51.1
+|    |    \--- javax.inject:javax.inject:1
+|    +--- org.jetbrains.kotlinx:kotlinx-coroutines-core:1.8.1 (*)
+|    +--- org.jetbrains.kotlinx:kotlinx-coroutines-android:1.8.1 (*)
+|    +--- org.wordpress:wellsql:2.0.0
+|    |    +--- androidx.annotation:annotation:1.2.0 -> 1.8.0 (*)
+|    |    \--- org.wordpress.wellsql:wellsql-annotations:2.0.0
+|    +--- org.wordpress.fluxc:fluxc-annotations:trunk-863f213e0e3a7a4322032e8e8c57a99f77bb48ec
+|    +--- org.greenrobot:eventbus-java:3.3.1
+|    +--- com.squareup.okhttp3:okhttp:4.9.0 -> 4.12.0 (*)
+|    +--- com.android.volley:volley:1.1.1 -> 1.2.0
+|    +--- androidx.paging:paging-runtime:2.1.2
+|    |    +--- androidx.paging:paging-common:2.1.2
+|    |    |    +--- androidx.annotation:annotation:1.0.0 -> 1.8.0 (*)
+|    |    |    \--- androidx.arch.core:core-common:2.0.0 -> 2.2.0 (*)
+|    |    +--- androidx.arch.core:core-runtime:2.0.0 -> 2.2.0 (*)
+|    |    +--- androidx.lifecycle:lifecycle-runtime:2.0.0 -> 2.7.0 (*)
+|    |    +--- androidx.lifecycle:lifecycle-livedata:2.0.0 -> 2.7.0 (*)
+|    |    \--- androidx.recyclerview:recyclerview:1.0.0 -> 1.3.2 (*)
+|    +--- com.goterl:lazysodium-android:5.0.2
+|    +--- net.java.dev.jna:jna:5.5.0
+|    \--- org.jetbrains.kotlin:kotlin-stdlib:1.9.25 (*)
-+--- org.wordpress.fluxc.plugins:woocommerce:trunk-6c8bfe8b38b9e29649d32dc80b433977e31b4d99
-|    +--- org.wordpress:fluxc:trunk-6c8bfe8b38b9e29649d32dc80b433977e31b4d99 (*)
-|    +--- com.google.code.gson:gson:2.8.5 -> 2.10.1
-|    +--- com.google.dagger:dagger:2.51.1 (*)
-|    +--- org.jetbrains.kotlinx:kotlinx-coroutines-core:1.8.1 (*)
-|    +--- org.jetbrains.kotlinx:kotlinx-coroutines-android:1.8.1 (*)
-|    +--- androidx.room:room-runtime:2.6.1 (*)
-|    +--- org.wordpress:wellsql:2.0.0 (*)
-|    +--- org.wordpress.fluxc:fluxc-annotations:trunk-6c8bfe8b38b9e29649d32dc80b433977e31b4d99
-|    +--- androidx.room:room-ktx:2.6.1 (*)
-|    \--- org.jetbrains.kotlin:kotlin-stdlib:1.9.25 (*)
++--- org.wordpress.fluxc.plugins:woocommerce:trunk-863f213e0e3a7a4322032e8e8c57a99f77bb48ec
+|    +--- org.wordpress:fluxc:trunk-863f213e0e3a7a4322032e8e8c57a99f77bb48ec (*)
+|    +--- com.google.code.gson:gson:2.8.5 -> 2.10.1
+|    +--- com.google.dagger:dagger:2.51.1 (*)
+|    +--- org.jetbrains.kotlinx:kotlinx-coroutines-core:1.8.1 (*)
+|    +--- org.jetbrains.kotlinx:kotlinx-coroutines-android:1.8.1 (*)
+|    +--- androidx.room:room-runtime:2.6.1 (*)
+|    +--- org.wordpress:wellsql:2.0.0 (*)
+|    +--- org.wordpress.fluxc:fluxc-annotations:trunk-863f213e0e3a7a4322032e8e8c57a99f77bb48ec
+|    +--- androidx.room:room-ktx:2.6.1 (*)
+|    \--- org.jetbrains.kotlin:kotlin-stdlib:1.9.25 (*)
-+--- org.wordpress:login:1.17.0
-|    +--- com.gravatar:gravatar:0.2.0
-|    |    +--- com.squareup.okhttp3:okhttp:4.12.0 (*)
-|    |    +--- com.squareup.retrofit2:retrofit:2.9.0
-|    |    |    \--- com.squareup.okhttp3:okhttp:3.14.9 -> 4.12.0 (*)
-|    |    +--- com.squareup.retrofit2:converter-gson:2.9.0
-|    |    |    +--- com.squareup.retrofit2:retrofit:2.9.0 (*)
-|    |    |    \--- com.google.code.gson:gson:2.8.5 -> 2.10.1
-|    |    +--- org.jetbrains.kotlinx:kotlinx-coroutines-android:1.7.3 -> 1.8.1 (*)
-|    |    \--- org.jetbrains.kotlin:kotlin-stdlib:1.9.22 -> 1.9.25 (*)
-|    +--- androidx.appcompat:appcompat:1.6.1 (*)
-|    +--- androidx.vectordrawable:vectordrawable-animated:1.1.0 (*)
-|    +--- androidx.media:media:1.2.1
-|    |    +--- androidx.collection:collection:1.1.0 -> 1.4.0 (*)
-|    |    \--- androidx.core:core:1.3.0 -> 1.13.1 (*)
-|    +--- androidx.legacy:legacy-support-v13:1.0.0
-|    |    \--- androidx.legacy:legacy-support-v4:1.0.0
-|    |         +--- androidx.core:core:1.0.0 -> 1.13.1 (*)
-|    |         +--- androidx.media:media:1.0.0 -> 1.2.1 (*)
-|    |         +--- androidx.legacy:legacy-support-core-utils:1.0.0 (*)
-|    |         +--- androidx.legacy:legacy-support-core-ui:1.0.0
-|    |         |    +--- androidx.annotation:annotation:1.0.0 -> 1.8.0 (*)
-|    |         |    +--- androidx.core:core:1.0.0 -> 1.13.1 (*)
-|    |         |    +--- androidx.legacy:legacy-support-core-utils:1.0.0 (*)
-|    |         |    +--- androidx.customview:customview:1.0.0 -> 1.1.0 (*)
-|    |         |    +--- androidx.viewpager:viewpager:1.0.0 (*)
-|    |         |    +--- androidx.coordinatorlayout:coordinatorlayout:1.0.0 -> 1.1.0 (*)
-|    |         |    +--- androidx.drawerlayout:drawerlayout:1.0.0 -> 1.1.1 (*)
-|    |         |    +--- androidx.slidingpanelayout:slidingpanelayout:1.0.0 -> 1.2.0 (*)
-|    |         |    +--- androidx.interpolator:interpolator:1.0.0 (*)
-|    |         |    +--- androidx.swiperefreshlayout:swiperefreshlayout:1.0.0 -> 1.1.0 (*)
-|    |         |    +--- androidx.asynclayoutinflater:asynclayoutinflater:1.0.0
-|    |         |    |    +--- androidx.annotation:annotation:1.0.0 -> 1.8.0 (*)
-|    |         |    |    \--- androidx.core:core:1.0.0 -> 1.13.1 (*)
-|    |         |    \--- androidx.cursoradapter:cursoradapter:1.0.0 (*)
-|    |         \--- androidx.fragment:fragment:1.0.0 -> 1.8.2 (*)
-|    +--- androidx.gridlayout:gridlayout:1.0.0
-|    |    +--- androidx.core:core:1.0.0 -> 1.13.1 (*)
-|    |    \--- androidx.legacy:legacy-support-core-ui:1.0.0 (*)
-|    +--- androidx.constraintlayout:constraintlayout:2.0.4 -> 2.1.4 (*)
-|    +--- com.google.android.material:material:1.2.1 -> 1.12.0 (*)
-|    +--- androidx.core:core-ktx:1.12.0 -> 1.13.1 (*)
-|    +--- com.github.bumptech.glide:glide:4.12.0 -> 4.16.0
-|    |    +--- com.github.bumptech.glide:gifdecoder:4.16.0
-|    |    |    \--- androidx.annotation:annotation:1.5.0 -> 1.8.0 (*)
-|    |    +--- com.github.bumptech.glide:disklrucache:4.16.0
-|    |    +--- com.github.bumptech.glide:annotations:4.16.0
-|    |    +--- androidx.fragment:fragment:1.3.6 -> 1.8.2 (*)
-|    |    +--- androidx.vectordrawable:vectordrawable-animated:1.1.0 (*)
-|    |    +--- androidx.exifinterface:exifinterface:1.3.6 (*)
-|    |    \--- androidx.tracing:tracing:1.0.0 (*)
-|    +--- androidx.credentials:credentials:1.2.0
-|    |    +--- androidx.annotation:annotation:1.5.0 -> 1.8.0 (*)
-|    |    +--- org.jetbrains.kotlin:kotlin-stdlib:1.8.22 -> 1.9.25 (*)
-|    |    +--- org.jetbrains.kotlinx:kotlinx-coroutines-core:1.7.1 -> 1.8.1 (*)
-|    |    \--- androidx.credentials:credentials-play-services-auth:1.2.0 (c)
-|    +--- androidx.credentials:credentials-play-services-auth:1.2.0
-|    |    +--- androidx.credentials:credentials:1.2.0 (*)
-|    |    +--- com.google.android.gms:play-services-auth:20.7.0 (*)
-|    |    +--- com.google.android.gms:play-services-fido:20.1.0 (*)
-|    |    +--- com.google.android.libraries.identity.googleid:googleid:1.1.0
-|    |    |    +--- org.jetbrains.kotlin:kotlin-stdlib:1.8.0 -> 1.9.25 (*)
-|    |    |    \--- org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.8.0 -> 1.9.10 (*)
-|    |    +--- org.jetbrains.kotlin:kotlin-stdlib:1.8.22 -> 1.9.25 (*)
-|    |    \--- androidx.credentials:credentials:1.2.0 (c)
-|    +--- com.google.dagger:dagger:2.47 -> 2.51.1 (*)
-|    +--- com.google.dagger:dagger-android-support:2.47 -> 2.50
-|    |    +--- com.google.dagger:dagger:2.50 -> 2.51.1 (*)
-|    |    +--- com.google.dagger:dagger-android:2.50
-|    |    |    +--- com.google.dagger:dagger:2.50 -> 2.51.1 (*)
-|    |    |    +--- com.google.dagger:dagger-lint-aar:2.50
-|    |    |    +--- androidx.annotation:annotation:1.2.0 -> 1.8.0 (*)
-|    |    |    \--- javax.inject:javax.inject:1
-|    |    +--- com.google.dagger:dagger-lint-aar:2.50
-|    |    +--- androidx.activity:activity:1.5.1 -> 1.8.1 (*)
-|    |    +--- androidx.annotation:annotation:1.2.0 -> 1.8.0 (*)
-|    |    +--- androidx.appcompat:appcompat:1.3.1 -> 1.6.1 (*)
-|    |    +--- androidx.fragment:fragment:1.5.1 -> 1.8.2 (*)
-|    |    +--- androidx.lifecycle:lifecycle-common:2.5.1 -> 2.7.0 (*)
-|    |    +--- androidx.lifecycle:lifecycle-viewmodel:2.5.1 -> 2.7.0 (*)
-|    |    +--- androidx.lifecycle:lifecycle-viewmodel-savedstate:2.5.1 -> 2.7.0 (*)
-|    |    \--- javax.inject:javax.inject:1
-|    +--- com.google.android.gms:play-services-auth:18.1.0 -> 20.7.0 (*)
-|    \--- org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.9.10 (*)
++--- org.wordpress:login:trunk-ac70b6dc3eb96595601c6ffc1edc596168228762
+|    +--- com.gravatar:gravatar:0.2.0
+|    |    +--- com.squareup.okhttp3:okhttp:4.12.0 (*)
+|    |    +--- com.squareup.retrofit2:retrofit:2.9.0
+|    |    |    \--- com.squareup.okhttp3:okhttp:3.14.9 -> 4.12.0 (*)
+|    |    +--- com.squareup.retrofit2:converter-gson:2.9.0
+|    |    |    +--- com.squareup.retrofit2:retrofit:2.9.0 (*)
+|    |    |    \--- com.google.code.gson:gson:2.8.5 -> 2.10.1
+|    |    +--- org.jetbrains.kotlinx:kotlinx-coroutines-android:1.7.3 -> 1.8.1 (*)
+|    |    \--- org.jetbrains.kotlin:kotlin-stdlib:1.9.22 -> 1.9.25 (*)
+|    +--- androidx.appcompat:appcompat:1.6.1 (*)
+|    +--- androidx.constraintlayout:constraintlayout:2.0.4 -> 2.1.4 (*)
+|    +--- com.google.android.material:material:1.2.1 -> 1.12.0 (*)
+|    +--- androidx.core:core:1.12.0 -> 1.13.1 (*)
+|    +--- com.github.bumptech.glide:glide:4.12.0 -> 4.16.0
+|    |    +--- com.github.bumptech.glide:gifdecoder:4.16.0
+|    |    |    \--- androidx.annotation:annotation:1.5.0 -> 1.8.0 (*)
+|    |    +--- com.github.bumptech.glide:disklrucache:4.16.0
+|    |    +--- com.github.bumptech.glide:annotations:4.16.0
+|    |    +--- androidx.fragment:fragment:1.3.6 -> 1.8.2 (*)
+|    |    +--- androidx.vectordrawable:vectordrawable-animated:1.1.0 (*)
+|    |    +--- androidx.exifinterface:exifinterface:1.3.6 (*)
+|    |    \--- androidx.tracing:tracing:1.0.0 (*)
+|    +--- androidx.credentials:credentials:1.2.0
+|    |    +--- androidx.annotation:annotation:1.5.0 -> 1.8.0 (*)
+|    |    +--- org.jetbrains.kotlin:kotlin-stdlib:1.8.22 -> 1.9.25 (*)
+|    |    +--- org.jetbrains.kotlinx:kotlinx-coroutines-core:1.7.1 -> 1.8.1 (*)
+|    |    \--- androidx.credentials:credentials-play-services-auth:1.2.0 (c)
+|    +--- androidx.credentials:credentials-play-services-auth:1.2.0
+|    |    +--- androidx.credentials:credentials:1.2.0 (*)
+|    |    +--- com.google.android.gms:play-services-auth:20.7.0 (*)
+|    |    +--- com.google.android.gms:play-services-fido:20.1.0 (*)
+|    |    +--- com.google.android.libraries.identity.googleid:googleid:1.1.0
+|    |    |    +--- org.jetbrains.kotlin:kotlin-stdlib:1.8.0 -> 1.9.25 (*)
+|    |    |    \--- org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.8.0 -> 1.9.10 (*)
+|    |    +--- org.jetbrains.kotlin:kotlin-stdlib:1.8.22 -> 1.9.25 (*)
+|    |    \--- androidx.credentials:credentials:1.2.0 (c)
+|    +--- com.google.dagger:dagger:2.47 -> 2.51.1 (*)
+|    +--- com.google.dagger:dagger-android-support:2.47 -> 2.50
+|    |    +--- com.google.dagger:dagger:2.50 -> 2.51.1 (*)
+|    |    +--- com.google.dagger:dagger-android:2.50
+|    |    |    +--- com.google.dagger:dagger:2.50 -> 2.51.1 (*)
+|    |    |    +--- com.google.dagger:dagger-lint-aar:2.50
+|    |    |    +--- androidx.annotation:annotation:1.2.0 -> 1.8.0 (*)
+|    |    |    \--- javax.inject:javax.inject:1
+|    |    +--- com.google.dagger:dagger-lint-aar:2.50
+|    |    +--- androidx.activity:activity:1.5.1 -> 1.8.1 (*)
+|    |    +--- androidx.annotation:annotation:1.2.0 -> 1.8.0 (*)
+|    |    +--- androidx.appcompat:appcompat:1.3.1 -> 1.6.1 (*)
+|    |    +--- androidx.fragment:fragment:1.5.1 -> 1.8.2 (*)
+|    |    +--- androidx.lifecycle:lifecycle-common:2.5.1 -> 2.7.0 (*)
+|    |    +--- androidx.lifecycle:lifecycle-viewmodel:2.5.1 -> 2.7.0 (*)
+|    |    +--- androidx.lifecycle:lifecycle-viewmodel-savedstate:2.5.1 -> 2.7.0 (*)
+|    |    \--- javax.inject:javax.inject:1
+|    +--- com.google.android.gms:play-services-auth:18.1.0 -> 20.7.0 (*)
+|    \--- org.jetbrains.kotlin:kotlin-stdlib:1.9.25 (*)
 \--- com.github.wordpress-mobile.WordPress-Aztec-Android:aztec:v1.3.45
-     \--- androidx.legacy:legacy-support-v4:1.0.0 (*)
+     \--- androidx.legacy:legacy-support-v4:1.0.0
+          +--- androidx.core:core:1.0.0 -> 1.13.1 (*)
+          +--- androidx.media:media:1.0.0
+          |    +--- androidx.annotation:annotation:1.0.0 -> 1.8.0 (*)
+          |    +--- androidx.core:core:1.0.0 -> 1.13.1 (*)
+          |    \--- androidx.versionedparcelable:versionedparcelable:1.0.0 -> 1.1.1 (*)
+          +--- androidx.legacy:legacy-support-core-utils:1.0.0 (*)
+          +--- androidx.legacy:legacy-support-core-ui:1.0.0
+          |    +--- androidx.annotation:annotation:1.0.0 -> 1.8.0 (*)
+          |    +--- androidx.core:core:1.0.0 -> 1.13.1 (*)
+          |    +--- androidx.legacy:legacy-support-core-utils:1.0.0 (*)
+          |    +--- androidx.customview:customview:1.0.0 -> 1.1.0 (*)
+          |    +--- androidx.viewpager:viewpager:1.0.0 (*)
+          |    +--- androidx.coordinatorlayout:coordinatorlayout:1.0.0 -> 1.1.0 (*)
+          |    +--- androidx.drawerlayout:drawerlayout:1.0.0 -> 1.1.1 (*)
+          |    +--- androidx.slidingpanelayout:slidingpanelayout:1.0.0 -> 1.2.0 (*)
+          |    +--- androidx.interpolator:interpolator:1.0.0 (*)
+          |    +--- androidx.swiperefreshlayout:swiperefreshlayout:1.0.0 -> 1.1.0 (*)
+          |    +--- androidx.asynclayoutinflater:asynclayoutinflater:1.0.0
+          |    |    +--- androidx.annotation:annotation:1.0.0 -> 1.8.0 (*)
+          |    |    \--- androidx.core:core:1.0.0 -> 1.13.1 (*)
+          |    \--- androidx.cursoradapter:cursoradapter:1.0.0 (*)
+          \--- androidx.fragment:fragment:1.0.0 -> 1.8.2 (*)

Please review and act accordingly

@hichamboushaba hichamboushaba merged commit a77d535 into trunk Aug 16, 2024
14 checks passed
@hichamboushaba hichamboushaba deleted the issue/12304-trigger-SMS-OTP-automatically branch August 16, 2024 08:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature: login Related to any part of the log in or sign in flow, or authentication. type: bug A confirmed bug.
Projects
None yet
4 participants